.container {
  display: flex;
  justify-content: center;
  align-items: center;
  /* 允许换行 */
  flex-wrap: wrap;

  .card {
    position: relative;
    width: 400px;
    height: 300px;
    margin: 10px;
    display: flex;
    align-items: flex-end;
    text-align: center;
    color: #f5f5f5;
    /* 阴影 */
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1),
    0 2px 2px rgba(0, 0, 0, 0.1),
    0 4px 4px rgba(0, 0, 0, 0.1),
    0 8px 8px rgba(0, 0, 0, 0.1),
    0 16px 16px rgba(0, 0, 0, 0.1);
    /* 溢出隐藏 */
    overflow: hidden;
    cursor: pointer;

    .img {
      width: 100%;
      height: 110%;
      position: absolute;
      top: 0;
      left: 0;
      /* 过渡效果: css属性名 时长 贝塞尔曲线 */
      transition: transform 1s cubic-bezier(0.19, 1, 0.22, 1);

      .el-image {
        width: 100%;
        height: 100%;
        background-size: cover;
        background-position: 0 0;
      }
    }

    .content {
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: center;
      position: relative;
      z-index: 1;
      //transform: translateY(76%);
      transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1);

      ul {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        li {
          width: 100%;
          display: flex;
          flex-direction: column;
          color: rgba(255,255,255,.5);
          letter-spacing: 2px;
          h2 {
            font-size: 23px;
            font-weight: bold;
          }
          p {
            height: 10px;
            display: flex;
            align-items: center;
            i {
              height: 15px;
              line-height: 15px;
              font-size: 18px;
              margin-right: 5px;
            }
            span {
              color: rgba(255,255,255,.8);
              //margin-right: 20px;
              font-weight: 400;
            }
          }

          &:last-child{
            width: 100%;
            display: flex;
            .el-button {
              width: 45%;
            }
          }
        }
      }
    }

    ul li *:not(h2) {
      /* .content下，除了h2，其他元素隐藏并下移20px */
      opacity: 0;
      transform: translateY(20px);
      transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.7s cubic-bezier(0.19, 1, 0.22, 1);
    }

    li {
      transform: translateY(100%);
      transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1);
    }

    &::after {
      content: "";
      display: block;
      width: 100%;
      height: 200%;
      background: linear-gradient(to bottom,
              rgba(0, 0, 0, 0) 0%,
              rgba(0, 0, 0, 0.25) 55%,
              rgba(0, 0, 0, 0.8) 100%);
      /* 绝对定位 */
      position: absolute;
      left: 0;
      top: 0;
      transform: translateY(0);
      /* 过渡效果 */
      transition: transform 1.4s cubic-bezier(0.19, 1, 0.22, 1);
    }

    &:hover .img {
      transform: translateY(-5%);
    }
    &:hover::after {
      transform: translateY(-50%);
    }
    &:hover .content {
      transform: translateY(0);
    }
    &:hover li {
      transform: translateY(0);
    }
    &:hover .content ul li *:not(h2) {
      opacity: 1;
      transform: translateY(0);
      /* 过渡效果延迟 */
      transition-delay: 0.1s;
    }
  }
}
